The invention relates generally to decoding linear block codes. More particularly, the invention relates to linear block code decoding techniques that utilize soft input and produce soft output information.
Many techniques have been developed for increasing the reliability of digital information that has been sent across a transmission channel to a receiver. One of these techniques is to encode the data bits into a number of messages in block format prior to transmission. At the receiver, a decoder is used to estimate the original message based on the received data. Some decoding rules utilize all the information in the received data bit stream and such decoding processes are generally referred to as soft decision decoding. Soft decision data includes information that indicates what value each received bit is assigned (e.g. a "1" or a "0") and an associated value that indicates the reliability or confidence that the value assigned to a particular received bit is correct. This is generally referred to herein as "soft input" information to a decoder. A decoder then utilizes the soft input information to decode the received information so as to produce an estimate of the original transmitted data.
The value of any coding technique increases if the decoder output includes not only an accurate estimate of the original message but also reliability information or a confidence measure as to the likelihood that the decoded message is correct. This is generally referred to herein as "soft output" information. Soft output information as to the reliability associated with each decoded bit can be useful, for example, with iterative decoding techniques.
Known decoding processes tend to be very computationally intensive operations. It is desirable to develop decoding techniques that substantially reduce the number of steps involved in the decoding process without a significant loss in accuracy. Known sub-optimal decoding techniques, however, do not include soft output information.
The objectives exist, therefore, for providing a simplified decoding process that also produces soft output information.